package com.cx.mall.generator;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;

public class CodeGenerator {
    public static void main(String[] args) {
        // 使用 FastAutoGenerator 快速配置代码生成器,注意修改数据库的URL
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/ts-content?serverTimezone=Asia/Shanghai",
                "root", "123456")
                // 全局配置
                .globalConfig(builder -> {
                    builder.author("yang") // 设置作者
                            .disableOpenDir() // 禁止打开输出目录
                            .outputDir("content/src/main/java"); // 输出目录，不同项目需要修改
                })
                // 包配置
                .packageConfig(builder ->
                        builder.parent("org.example.labuba.content") // 设置父包名
                                .entity("entity") // 设置实体类包名
                                .mapper("mapper") // 设置 Mapper 接口包名
                                .service("service") // 设置 Service 接口包名
                                .serviceImpl("service.impl")//设置 Service 实现类包名
                                .xml("mappers")//设置 Mapper XML文件包名
                )
                // 策略配置
                .strategyConfig(builder -> {
                    builder.addInclude("archives","arctype","feedback","member_stow","spearc","special") //设置需要生成的表名
                            //.addTablePrefix("t_") // 设置过滤表前
                            .entityBuilder()
                            .enableLombok()// 启用 Lombok
                            .enableTableFieldAnnotation() // 启用字段注解
                            .controllerBuilder()
                            .enableRestStyle() // 启用 REST 风格
                            .serviceBuilder()
                            .mapperBuilder();
                })
                .execute(); // 执行生成
    }
}